<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="utf-8"/>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
    <title>{$Think.config.web.htpasswd.title}</title>
    <meta name="applicable-device" content="pc,mobile"/>
    <meta http-equiv="Cache-Control" content="no-transform"/>
    <meta http-equiv="Cache-Control" content="no-siteapp"/>
    <meta name="keywords" content="{$Think.config.web.htpasswd.keywords}"/>
    <meta name="description" content="{$Think.config.web.htpasswd.description}"/>
    <meta name="renderer" content="webkit"/>
    <meta name="apple-mobile-web-app-capable" content="yes"/>
    <link rel="icon" href="/favicon.ico" mce_href="/favicon.ico" type="image/x-icon"/>
    <link href="/static/style/bootstrap.min.css" rel="stylesheet" type="text/css"/>
    <link href="/static/style/tool.css" rel="stylesheet" type="text/css"/>
    <!--[if lt IE 9]>
    <script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></script>
    <script src="http://apps.bdimg.com/libs/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->
    {:$Think.config.web.header}</head><body>{include file="header" /}
<div class="container">
    <div class="row">
        <div class="col-md-12 col10main">
            <div class="accordion" id="accordion2">
                <div class="accordion-group">
                    <ul class="nav nav-tabs hbflag">
                        <li role="presentation"><a href="/password/">密码生成器</a></li>
                        <li role="presentation"><a href="/uuid/">UUID在线生成</a></li>
                        <li role="presentation"><a href="/guid/">GUID在线生成</a></li>
                        <li role="presentation" class="active"><a href="/htpasswd/">htpasswd生成</a></li>
                        <li role="presentation"><a href="/barcode/">条形码生成器</a></li>
                        <li role="presentation"><a href="/ip2long/">IP/数字地址转换</a></li>
                    </ul>
                    <div class="panel">
                        <form id="form1" class="form-horizontal" method="post">
                            <div class="form-group"><label class="col-sm-2 control-label">用户名：</label>
                                <div class="col-sm-10"><input type="text" class="form-control" id="user"
                                                              placeholder="用户名"></div>
                            </div>
                            <div class="form-group"><label class="col-sm-2 control-label">密码：</label>
                                <div class="col-sm-10"><input type="text" class="form-control" id="pwd1"
                                                              placeholder="密码"></div>
                            </div>
                            <div class="form-group"><label class="col-sm-2 control-label">加密算法：</label>
                                <div class="col-sm-10"><select id="alg" class="form-control">
                                    <option value="0">plain (Windows &amp; TPF servers)</option>
                                    <option value="1">Crypt (all Unix servers)</option>
                                    <option selected="selected" value="2">MD5 (Apache servers only)</option>
                                    <option value="3">SHA-1 (Netscape-LDIF / Apache servers)</option>
                                </select></div>
                            </div>
                            <div class="form-group">
                                <div class="col-sm-12 text-center"><a class="btn btn-success" id="hash"
                                                                      onclick="javascript:$('#result').val(htpasswd($('#user').val(), $('#pwd1').val(), +$('#alg').val()));">点击生成</a><span
                                        id="copyallcode" class="btn btn-default"
                                        data-clipboard-target="#result">复制结果</span><input class="btn btn-default"
                                                                                          onclick="$('#result').val('');"
                                                                                          type="button" value="清空">
                                </div>
                            </div>
                            <div class="form-group"><label class="col-sm-2 control-label">生成结果：</label>
                                <div class="col-sm-10"><input id="result" type="text" class="form-control"
                                                              placeholder="结果" onclick="this.focus();this.select();">
                                </div>
                            </div>
                        </form>
                    </div>
                </div>
                <div class="alert alert alert-success alert-dismissible"><h4>htpasswd在线生成器</h4>
                    <p>什么是 htpasswd ?</p>
                    <p class="mb-10">htpasswd 是开源 http 服务器 apache httpd 的一个命令工具，用于生成 http 基本认证的密码文件。</p>
                    <p>加密方式有什么区别？</p>
                    <p><strong>MD5:</strong>使用MD5加密密码。在Windows, Netware 和TPF上，这是默认的加密方式。</p>
                    <p><strong>crypt:</strong>使用crypt()加密密码。在除了Windows, Netware和TPF的平台上，这是默认的。 虽然它在所有平台上可以为htpasswd所支持，
                        但是在Windows, Netware和TPF上不能为httpd服务器所支持。</p>
                    <p><strong>SHA:</strong>使用SHA加密密码。 它是为了方便转入或移植到使用LDAP Directory Interchange Format
                        (ldif)的Netscape而设计的。</p>
                    <p><strong>plain:</strong>不加密，使用纯文本的密码。虽然在所有平台上 htpasswd 都可以建立这样的密码， 但是httpd后台只在Windows,
                        Netware和TPF上支持纯文本的密码。</p>
                    <p>为什么要做成在线的？</p>
                    <p>如果我们不使用apache服务器，例如使用nginx等，可能手头没有这个命令行工具，就无法生成密码文件，有了在线版的可以方便服务器管理员使用。</p></div>
                <div class="accordion-group"></div>
            </div>
        </div>
    </div>
</div>
<script src="/static/script/jquery-1.11.3.min.js" type="text/javascript"></script>
<script src="/static/script/bootstrap.min.js" type="text/javascript"></script>
<script src="/static/script/tool.js" type="text/javascript"></script>
<script type="text/javascript">setJS(["/static/script/pcjs/htpasswd/htpsha1.js", "/static/script/pcjs/htpasswd/htpasswd.js", "/static/script/pcjs/htpasswd/jsnote.js", "/static/script/pcjs/htpasswd/htpmd5.js"]);</script>
{include file="nav" /}
{include file="footer" /}
</body>
</html>